Incremental DFS algorithms: a theoretical and experimental study

نویسندگان

  • Surender Baswana
  • Ayush Goel
  • Shahbaz Khan
چکیده

Depth First Search (DFS) tree is a fundamental data structure used for solving various graph problems. For a given graph G = (V,E) on n vertices and m edges, a DFS tree can be built in O(m + n) time. In the last 20 years, a few algorithms have been designed for maintaining a DFS tree efficiently under insertion of edges. For undirected graphs, there are two prominent algorithms, namely, ADFS1 and ADFS2 [ICALP14] that achieve total update time of O(n √ m) and O(n) respectively. For directed acyclic graphs, the only non-trivial algorithm, namely, FDFS [IPL97] requires total O(mn) update time. However, even after 20 years of this result, there does not exist any nontrivial incremental algorithm for a DFS tree in directed graphs with o(m) worst case bound. In this paper, we carry out extensive experimental and theoretical evaluation of the existing algorithms for maintaining incremental DFS in random graphs and real world graphs and derive the following interesting results. 1. For insertion of uniformly random sequence of ( n 2 ) edges, each of ADFS1, ADFS2 and FDFS perform equally well and are found to take Θ(n) time experimentally. This is quite surprising because the worst case bounds of ADFS1 and FDFS are greater than Θ(n) by a factor of √ m/n and m/n respectively, which we prove to be tight. We complement this experimental result by probabilistic analysis of these algorithms proving Õ(n) 1 bound on the time complexity. For this purpose, we derive results about the structure of a DFS tree in a random graph. These results are of independent interest in the domain of random graphs. 2. The insight that we developed about DFS tree in random graphs leads us to design an extremely simple algorithm for incremental DFS that works for both undirected and directed graphs. Moreover, this algorithm theoretically matches and experimentally outperforms the performance of the state-of-the-art algorithm in dense random graphs. Furthermore, it can also be used as a single-pass semi-streaming algorithm for computing incremental DFS and strong connectivity for random graphs using O(n log n) space. 3. Even for real world graphs, which are usually sparse, both ADFS1 and FDFS turn out to be much better than their theoretical bounds. Here again, we present two simple algorithms for incremental DFS for directed and undirected graphs respectively, which perform very well on real graphs. In fact our proposed algorithm for directed graphs almost always matches the performance of FDFS.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Improved Algorithms for Maintaining DFS Tree in Undirected Graphs

Depth first search (DFS) tree is one of the most well-known data structures for designing efficient graph algorithms. Given an undirected graph G = (V,E) with n vertices and m edges, the textbook algorithm takes O(n + m) time to construct a DFS tree. In this paper, we study the problem of maintaining a DFS tree when the graph is undergoing updates. Formally, we show the following results. • Inc...

متن کامل

Comparative Analysis of Various Approaches Used in Frequent Pattern Mining

Frequent pattern mining has become an important data mining task and has been a focused theme in data mining research. Frequent patterns are patterns that appear in a data set frequently. Frequent pattern mining searches for recurring relationship in a given data set. Various techniques have been proposed to improve the performance of frequent pattern mining algorithms. This paper presents revi...

متن کامل

Dynamic DFS in Undirected Graphs: breaking the O(m) barrier

Given an undirected graph G = (V, E) on n vertices and m edges, we address the problem of maintaining a DFS tree when the graph is undergoing updates (insertion and deletion of vertices or edges). We present the following results for this problem. 1. Fault tolerant DFS tree: There exists a data structure of size˜O(m) 1 such that given any set F of failed vertices or edges, a DFS tree of the gra...

متن کامل

Distributed and Cooperative Compressive Sensing Recovery Algorithm for Wireless Sensor Networks with Bi-directional Incremental Topology

Recently, the problem of compressive sensing (CS) has attracted lots of attention in the area of signal processing. So, much of the research in this field is being carried out in this issue. One of the applications where CS could be used is wireless sensor networks (WSNs). The structure of WSNs consists of many low power wireless sensors. This requires that any improved algorithm for this appli...

متن کامل

An Experimental Study on the process parameters of Incremental Forming of Explosively-Welded Al/Cu Bimetal

Single point incremental sheet metal forming is a sheet metal forming process that forms products without the complex dies and tools with low cost. In this study, the incremental sheet metal forming process has been experimentally investigated on the explosively-welded Al/Cu bimetal sheets. Also, the effects of process parameters, such as arrangement of layer`s bimetal, tool diameter and tool p...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2018